package com.tjmc.nsia.core.service;

import cn.dev33.satoken.stp.SaTokenInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tjmc.nsia.core.dao.entity.NsiaChatSession;
import com.tjmc.nsia.core.dao.entity.NsiaUser;
import com.tjmc.nsia.core.dto.resp.NsiaUserExtend;

import java.util.List;

/**
 * <p>
 * 用户信息表 服务类
 * </p>
 *
 * @author Luc
 * @date 2024/06/03
 */
public interface NsiaUserService extends IService<NsiaUser> {

    SaTokenInfo login(String username, String password, String code, String uuid);

    void validateCaptcha(String username, String code, String uuid);

    NsiaUserExtend getLoginUser();

    void logout();

    Integer refreshSession(Long userId);

    List<NsiaChatSession> getChatSessions(Long userId);

    void clearSessions(Long userId);

    SaTokenInfo wxLogin(String openid, String sessionKey);

}
